//1493. 删掉一个元素以后全为 1 的最长子数组


#include <vector>
#include <algorithm>
using namespace std;

class Solution 
{
public:
    int longestSubarray(vector<int>& nums)
    {
        int ret = INT_MIN;
        for(int left = 0, right = 0, erase = 0; right < nums.size(); right++)
        {
            if(nums[right] == 0) erase++;
            while(erase > 1) // 判断
            {
                if(nums[left++] == 0) erase--; // 出窗口
            }
            ret = max(ret, right - left); // 更新结果
        }
        return ret;
    }
};